package io.gitee.thinkbungee.component.push.service;

import javax.mail.MessagingException;

/**
 * 邮件推送服务
 *
 * @author chenyichang
 * @since 2022/6/2
 */
public interface MailPushService {
    /**
     * 发送文本简单邮件
     *
     * @param to      收件人
     * @param subject 主题
     * @param content 内容
     * @param cc      抄送人
     */
    void sendSimpleMail(String to, String subject, String content, String... cc);

    /**
     * 发送HTML邮件
     *
     * @param to      收件人
     * @param subject 主题
     * @param content 内容
     * @param cc      抄送人
     */
    void sendHtmlMail(String to, String subject, String content, String... cc) throws MessagingException;

    /**
     * 发送待附件的邮件
     *
     * @param to       收件人
     * @param subject  主题
     * @param content  内容
     * @param filePath 附件文件地址
     * @param cc       抄送人
     */
    void sendAttachmentsMail(String to, String subject, String content, String filePath, String... cc) throws MessagingException;

    /**
     * 发送正文中有静态资源的邮件
     *
     * @param to      收件人
     * @param subject 主题
     * @param content 内容
     * @param rscPath 静态资源地址
     * @param rscId   静态资源id
     * @param cc      抄送人
     */
    void sendResourceMail(String to, String subject, String content, String rscPath, String rscId, String... cc) throws MessagingException;
}
